HAL OSPI callback functions migration ¶
This section provides information about the HAL XSPI callback functions migration.
Callback functions in non-blocking modes ¶
HAL OSPI error callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_OSPI_ErrorCallback(OSPI_HandleTypeDef *hospi);
|
HAL_XSPI_ErrorCallback(hal_xspi_handle_t *hxspi);
|
HAL OSPI abort completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_OSPI_AbortCpltCallback(OSPI_HandleTypeDef *hospi);
|
HAL_XSPI_AbortCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL XSPI fifo threshold callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_OSPI_FifoThresholdCallback(OSPI_HandleTypeDef *hospi);
|
HAL_XSPI_FifoThresholdCallback(hal_xspi_handle_t *hxspi);
|
HAL OSPI indirect mode callback functions ¶
HAL OSPI command completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_OSPI_CmdCpltCallback(OSPI_HandleTypeDef *hospi);
|
HAL_XSPI_CmdCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL OSPI RX transfer completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_OSPI_RxCpltCallback(OSPI_HandleTypeDef *hospi);
|
HAL_XSPI_RxCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL OSPI TX transfer completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_OSPI_TxCpltCallback(OSPI_HandleTypeDef *hospi);
|
HAL_XSPI_TxCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL OSPI RX half completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_OSPI_RxHalfCpltCallback(OSPI_HandleTypeDef *hospi);
|
HAL_XSPI_RxHalfCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL OSPI TX half completed callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_OSPI_TxHalfCpltCallback(OSPI_HandleTypeDef *hospi);
|
HAL_XSPI_TxHalfCpltCallback(hal_xspi_handle_t *hxspi);
|
HAL OSPI status flag polling mode function ¶
HAL XSPI status match callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_OSPI_StatusMatchCallback(OSPI_HandleTypeDef *hospi);
|
HAL_XSPI_StatusMatchCallback(hal_xspi_handle_t *hxspi);
|
HAL OSPI memory-mapped mode function ¶
HAL OSPI timeout callback ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_OSPI_TimeOutCallback(OSPI_HandleTypeDef *hospi);
|
Removed from HAL2.
The timeout event is now notified using the
Note Error code can be retrieved from HAL_XSPI_GetLastErrorCodes(). |
HAL OSPI register/unregister callback functions ¶
HAL OSPI register callback ¶
In HAL1, the function
HAL_OSPI_RegisterCallback()
is used to register various OSPI callbacks through a single function with a specific callback ID, whereas, in HAL2, distinct functions are available to register each specific XSPI callback.
|
Function |
HAL 1 |
HAL 2 |
|---|---|---|
|
Tx Complete Callback |
HAL_OSPI_RegisterCallback(&ospi,
HAL_OSPI_TX_CPLT_CB_ID,
USER_OSPI_TxCpltCallback)
|
HAL_XSPI_RegisterTxCpltCallback(&xspi,
USER_OSPI_TxCpltCallback);
|
|
Rx Complete Callback |
HAL_OSPI_RegisterCallback(&ospi,
HAL_OSPI_RX_CPLT_CB_ID,
USER_OSPI_RxCpltCallback)
|
HAL_XSPI_RegisterRxCpltCallback(&xspi,
USER_OSPI_RxCpltCallback);
|
|
Tx Half Complete Callback |
HAL_OSPI_RegisterCallback(&ospi,
HAL_OSPI_TX_HALF_CPLT_CB_ID,
USER_OSPI_TxHalfCpltCallback);
|
HAL_XSPI_RegisterRxCpltCallback(&xspi,
USER_OSPI_TxHalfCpltCallback);
|
|
Rx Half Complete Callback |
HAL_OSPI_RegisterCallback(&ospi,
HAL_OSPI_RX_HALF_CPLT_CB_ID,
USER_OSPI_RxHalfCpltCallback);
|
HAL_XSPI_RegisterRxCpltCallback(&xspi,
USER_OSPI_RxHalfCpltCallback);
|
|
OSPI error callback |
HAL_OSPI_RegisterCallback(&ospi,
HAL_OSPI_ERROR_CB_ID,
USER_OSPI_ErrorCallback);
|
HAL_XSPI_RegisterErrorCallback(&xspi,
USER_OSPI_ErrorCallback);
|
|
OSPI abort callback |
HAL_OSPI_RegisterCallback(&ospi,
HAL_OSPI_ABORT_CB_ID,
USER_OSPI_AbortCpltCallback);
|
HAL_XSPI_RegisterAbortCpltCallback(&xspi,
USER_OSPI_AbortCpltCallback);
|
|
OSPI FIFO Threshold callback |
HAL_OSPI_RegisterCallback(&ospi,
HAL_OSPI_FIFO_THRESHOLD_CB_ID,
USER_OSPI_FIFO_THRESHOLD_CpltCallback);
|
HAL_XSPI_RegisterFifoThresholdCallback(&xspi,
USER_OSPI_FIFO_THRESHOLD_CpltCallback);
|
|
OSPI Command complete callback |
HAL_OSPI_RegisterCallback(&ospi,
HAL_OSPI_CMD_CPLT_CB_ID,
USER_OSPI_Cmd_CpltCallback);
|
HAL_XSPI_RegisterCmdCpltCallback(&xspi,
USER_OSPI_Cmd_CpltCallback);
|
|
OSPI Status match callback |
HAL_OSPI_RegisterCallback(&ospi,
HAL_OSPI_STATUS_MATCH_CB_ID,
USER_OSPI_Status_Match_CpltCallback);
|
HAL_XSPI_RegisterStatusMatchCallback(&xspi,
USER_OSPI_Status_Match_CpltCallback);
|
|
OSPI Timeout callback |
HAL_OSPI_RegisterCallback(&ospi,
HAL_OSPI_TIMEOUT_CB_ID,
USER_OSPI_timeout_CpltCallback);
|
Removed from HAL2.
Use instead HAL_XSPI_RegisterErrorCallback(&xspi,
USER_OSPI_ErrorCallback);
|
HAL OSPI unregister callback ¶
In HAL2, the unregister callback API has been removed. Instead, callbacks can be managed by re-registering the default HAL XSPI weak callbacks as needed.
|
Function |
HAL 1 |
HAL 2 |
|---|---|---|
|
Tx Complete Callback |
HAL_OSPI_UnRegisterCallback(&ospi,
HAL_OSPI_TX_CPLT_CB_ID)
|
HAL_XSPI_RegisterTxCpltCallback(&xspi,
HAL_XSPI_TxCpltCallback);
|
|
Rx Complete Callback |
HAL_OSPI_UnRegisterCallback(&ospi,
HAL_OSPI_RX_CPLT_CB_ID)
|
HAL_XSPI_RegisterRxCpltCallback(&xspi,
HAL_XSPI_RxCpltCallback);
|
|
Tx Half Complete Callback |
HAL_OSPI_UnRegisterCallback(&ospi,
HAL_OSPI_TX_HALF_CPLT_CB_ID);
|
HAL_XSPI_RegisterRxCpltCallback(&xspi,
HAL_XSPI_TxHalfCpltCallback);
|
|
Rx Half Complete Callback |
HAL_OSPI_UnRegisterCallback(&ospi,
HAL_OSPI_RX_HALF_CPLT_CB_ID);
|
HAL_XSPI_RegisterRxCpltCallback(&xspi,
HAL_XSPI_RxHalfCpltCallback);
|
|
OSPI error callback |
HAL_OSPI_UnRegisterCallback(&ospi,
HAL_OSPI_ERROR_CB_ID);
|
HAL_XSPI_RegisterErrorCallback(&xspi,
HAL_XSPI_ErrorCallback);
|
|
OSPI abort callback |
HAL_OSPI_UnRegisterCallback(&ospi,
HAL_OSPI_ABORT_CB_ID);
|
HAL_XSPI_RegisterAbortCpltCallback(&xspi,
HAL_XSPI_AbortCpltCallback);
|
|
OSPI FIFO Threshold callback |
HAL_OSPI_UnRegisterCallback(&ospi,
HAL_OSPI_FIFO_THRESHOLD_CB_ID);
|
HAL_XSPI_RegisterFifoThresholdCallback(&xspi,
HAL_XSPI_FifoThresholdCallback);
|
|
OSPI Command complete callback |
HAL_OSPI_UnRegisterCallback(&ospi,
HAL_OSPI_CMD_CPLT_CB_ID);
|
HAL_XSPI_RegisterCmdCpltCallback(&xspi,
HAL_XSPI_CmdCpltCallback);
|
|
OSPI Status match callback |
HAL_OSPI_UnRegisterCallback(&ospi,
HAL_OSPI_STATUS_MATCH_CB_ID);
|
HAL_XSPI_RegisterStatusMatchCallback(&xspi,
HAL_XSPI_StatusMatchCallback);
|
|
OSPI Timeout callback |
HAL_OSPI_UnRegisterCallback(&ospi,
HAL_OSPI_TIMEOUT_CB_ID);
|
HAL_XSPI_RegisterErrorCallback(&xspi,
HAL_XSPI_ErrorCallback);
|
Related concept: Individual callback registration APIs replace global register and unregister functions